██████╗ ███████╗████████╗██╗██████╗ ███████╗██████╗ ██╗ █████╗
██╔══██╗██╔════╝╚══██╔══╝██║██╔══██╗██╔════╝██╔══██╗██║██╔══██╗
██████╔╝█████╗ ██║ ██║██████╔╝█████╗ ██║ ██║██║███████║
██╔══██╗██╔══╝ ██║ ██║██╔═══╝ ██╔══╝ ██║ ██║██║██╔══██║
██║ ██║███████╗ ██║ ██║██║ ███████╗██████╔╝██║██║ ██║
╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝╚═╝ ╚══════╝╚═════╝ ╚═╝╚═╝ ╚═╝
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Processing
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
mwbwProcessing è una mwcalibreria grafica che consente di sviluppare applicazioni di vario tipo, come mwcqvideogiochi, mwcganimazioni, contenuti interattivi e opere d'mwcwarte generativa.cite-ref-0-1-0[1]cite-ref-2[2]
Si basa sul mwfqlinguaggio mwfgJava, di cui eredita la mwfwsintassi, i comandi e il paradigma di mwgaprogrammazione orientata agli oggetti, ma in più mette a disposizione numerose funzionalità per gestire in modo facile gli mwgqaspetti grafici e mwggmultimediali.
È distribuito nei termini della mwhalicenza libera mwhqmwhgGNU General Public License (GPL) ed è compatibile con i mwhwsistemi operativi mwiaLinux, mwiqmacOS e mwigMicrosoft Windows.cite-ref-3[3]
Processing può interagire con la scheda hardware mwkaArduino.
Contents
• Sketch
• Setup
• Draw
• p5.js
• Note
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Caratteristiche
Il pacchetto, scaricabile gratuitamente dal sito ufficiale, mette a disposizione un mwnqambiente di sviluppo integrato (IDE).
Sketch
Le varie creazioni sono chiamate mwoasketch e sono organizzate in uno mwoqsketchbook.
Oltre alle mwowclassi che lo compongono, ogni sketch, in genere, contiene anche una cartella mwpadata in cui viene inserito il materiale multimediale utile all'applicazione, come, per esempio, immagini, mwpqfont e mwpgfile audio.cite-ref-0-1-1[1]
Ogni applicazione creata può inoltre essere esportata come mwraJava applet.
Esempio di Sketch in Processing
Per creare uno mwrwsketch dinamico, Processing mette a disposizione una funzione mwsadraw che viene eseguita per ogni frame; la funzione mwsqsetup invece, viene invocata una sola volta al lancio dello mwsgsketch.
// dichiarazione di variabili globali
float xoffset = 0.0;
float yoffset = 0.0;
// metodo setup - eseguito solo all'avvio
void setup()
{
size(400, 400);
PFont font = loadFont("Calibri-24.vlw");
textFont(font, 24);
smooth();
println("Stampo una sola volta su console");
}
// metodo draw - eseguito per ogni frame
void draw()
{
background(128);
println("Stampo ad ogni frame su console");
text("Stampo ad ogni frame su schermo", xoffset, yoffset);
xoffset++;
yoffset++;
}
Dichiarazioni
All'inizio vengono dichiarate le mwyavariabili globali. Nel caso dell'esempio sopra riportato, sono due float che indicano rispettivamente gli spostamenti x e y.
Setup
Nel metodo mwywsetup di questo esempio, vengono impostati diversi parametri: mwzasize indica le dimensioni della finestra dell'applicazione; mwzqsmooth servirà invece per applicare l'mwzgAntialiasing a eventuali figure geometriche (primitive e non) all'interno dell'applicazione.
La seconda riga del setup serve invece a creare font; una nuova mw0aistanza di mw0qPFont, la classe che in Processing rappresenta il font da utilizzare all'interno dell'applicazione: il font scelto (mw0g"Calibri-24.vlw") viene prima caricato tramite il metodo mw0wloadFont e in seguito viene adottato (con mw1atextFont) per il testo nella riga successiva.
Draw
In mw1wdraw viene prima impostato il mw2abackground, ovvero lo sfondo, che in genere deve essere reimpostato a ogni frame: infatti, se non viene reimpostato ogni volta, le animazioni rimarranno letteralmente impresse sullo sfondo.
L'istruzione mw2gtext permette invece di renderizzare nello mw2wsketch un messaggio, che adotta il font già scelto in precedenza in mw3asetup e la posizione individuata dalle coordinate mw3qxoffset e mw3gyoffset, i cui incrementi successivi(indicati da mw3wxoffset++ ed mw4ayoffset++) permettono di muovere il testo dall'alto a sinistra fino in basso a destra.
p5.js
mw4wp5.js (che dal 2018 ha sostituito mw5aProcessing.js) è un mw5qmw5gporting di Processing per mw5wJavaScript, con il quale è possibile creare contenuti multimediali avanzati per mw6aHTML5, eseguiti in qualunque moderno mw6qweb browser.cite-ref-4[4]
Note
cite-note-0-11. ↑ mw9g(mw9wmw-aEN) mw-qmw-gProcessing Overview, su mw-wProcessing. mw-aURL consultato il 23 gennaio 2023 mw-q(archiviato dall'mw-gurl originale il 28 maggio 2023).
cite-note-22. ↑ mwaqi(mwaqmmwaqqEN) mwaqumwaqyWhat language is processing based on?, su mwaqcQuora. mwaqgURL consultato il 23 gennaio 2023.
cite-note-33. ↑ mwaqw(mwaq0mwaq4EN) mwaq8mwaraDownload Processing, su mwareprocessing.org. mwariURL consultato il 30 luglio 2014. mwarq«Processing is available for Linux, Mac OS X, and Windows. [..] Processing is Open Source Software. The PDE (Processing Development Environment) is released under the GNU GPL (General Public License). The export libraries (also known as 'core') are released under the GNU LGPL (Lesser General Public License)»
cite-note-44. ↑ mwarg(mwarkmwaroEN) mwarsp5js.org, mwarwhttps://p5js.org/mwar0 Titolo mancante per url mwar4url (aiuto). mwasaURL consultato il 17 maggio 2025 mwase(mwasiarchiviato il 5 dicembre 2018). mwasq«With the development of p5js and the API advances in Processing itself, as well as Processing.js itself having been in maintenance mode for quite a few years now, this project has been archived as of December 2018.»
Altri progetti
Altri progetti
• Wikimedia Commons
• Wikimedia Commons contiene immagini o altri file su Processing
Collegamenti esterni
• (EN) Sito ufficiale, su processing.org.
• citerefsapere-itprocessing, su sapere.it, De Agostini.
• citerefgithub(EN) Processing, su GitHub.
• Repository sorgenti di Processing, su github.com.
• mwasw(EN) http://mobile.processing.org, su mobile.processing.org. URL consultato il 12 giugno 2009 (archiviato dall'url originale il 28 giugno 2009).